#include<iostream>



struct data
{
public:
    data(int a = 3,int b = 4)
        :_a(a)
        ,_b(b)
    {
    }

    ~data()
    {

    }

    int GetA()
    {
        return _a;
    }
    int GetB()
    {
        return _b;
    }


private:
    int _a;
    int _b;
};

void operator<<(std::ostream& out,data& a)
{
    out << a.GetA() << " " << a.GetB();
}


using Data = data;

int main()
{
    Data a(2,3);
    std::cout << a;
    return 0;
}